package com.mix;

import com.aspose.words.Document;
import com.aspose.words.SaveFormat;
import com.aspose.words.TextWatermarkOptions;
import com.aspose.words.WatermarkLayout;

import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Date;

public class AsposePptUtil {

    public static void main(String[] args) throws Exception {
        putWatermark();
    }

    // 比较Word
    public static void compareWord() throws Exception {
        // 创建一个新的文档
        Document doc1 = new Document("C:\\Users\\zhoubin\\Desktop\\代码集合\\file-util\\test-files\\比较两个word文件的差异\\原版.docx");
        Document doc2 = new Document("C:\\Users\\zhoubin\\Desktop\\代码集合\\file-util\\test-files\\比较两个word文件的差异\\修订版.docx");
        doc1.compare(doc2, "小明", new Date());
        // 保存文档
        doc1.save("C:\\Users\\zhoubin\\Desktop\\代码集合\\file-util\\test-files\\比较两个word文件的差异\\比较结果.docx");
    }

    // 给Workbook加上水印
    public static byte[] putWatermark() throws Exception {
        // 先获取文件流 （这边先随意读取文件流）
        InputStream in = new FileInputStream("C:\\Users\\zhoubin\\Desktop\\代码集合\\file-util\\test-files\\比较两个word文件的差异\\原版.docx");
        // 注意document包，每种类型都有一个document
        Document doc = new Document(in);
        TextWatermarkOptions textWatermarkOptions = new TextWatermarkOptions();
        textWatermarkOptions.setFontFamily("宋体");
        textWatermarkOptions.setFontSize(24f);
        textWatermarkOptions.setColor(java.awt.Color.RED);
        textWatermarkOptions.setLayout(WatermarkLayout.DIAGONAL);
        textWatermarkOptions.isSemitrasparent(false);
        doc.getWatermark().setText("水印内容f3f2    ffffffffffffffffffffffff", textWatermarkOptions);
        doc.save("C:\\Users\\zhoubin\\Desktop\\代码集合\\file-util\\test-files\\比较两个word文件的差异\\watermark.docx");
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        doc.save(out, SaveFormat.DOCX);
        out.close();
// 输出流用于下载
        return out.toByteArray();

    }
}